package top.jybill.dao;

import org.springframework.stereotype.Repository;
import top.jybill.domain.MyPageInfo;
import top.jybill.domain.Permission;
import top.jybill.domain.RolePermission;

import java.util.List;

/**
 * 权限dao
 */
@Repository
public interface IPermissionDao {
  /**
   * 根据角色id查询权限列表
   * @param roleId
   * @return
   */
  List<Permission> findPermissionsByRoleId(String roleId);

  /**
   * 查询所有权限
   * @return
   */
  List<Permission> findAllPermissions();

  /**
   * 分页查权限
   * @param page
   * @return
   */
  List<Permission> findPermissionsByPage(MyPageInfo page);

  /**
   * 添加权限
   * @param permission
   */
  void addPermission(Permission permission);

  /**
   * 更新权限
   * @param permission
   */
  void updatePermission(Permission permission);

  /**
   * 删除权限
   * @param pid
   */
  void delPermission(String pid);

  /**
   * 根据permissionId 查询Permission
   * @param pid
   * @return
   */
  Permission findPermissionByPid(String pid);
}
